Welcome to CryptoPunk Version 1.11

CryptoPunk is free for private use.
CryptoPunk is brought to you by meg|gem.
Inquiries for commercial use please e-mail MEGstir@aol.com.

CryptoPunk Version 1.11 compiled for Win95 running on a Pentium.

CryptoPunk is 128 bit encryption using four 128 bit keys for encryption and decryption.

CryptoPunk uses the Diffie-Hellman protocol on points of an elliptical curve over a finite field for its public key exchange.  The engine for elliptical point addition and scalar multiplication is designed and implemented in C++ with inline assembly by meg|gem.

CryptoPunk uses a cryptographic algorithm designed and implemented in C++ with inline assembly by meg|gem.  The algorithm uses two LFSRs, three XOR blocks, three ADD blocks, one MUL block and two PCBC feedbacks into the LFSRs tap function.

If you are a cryptographer/cryptanalyst and would like to see the details of both algorithms please e-mail MEGstir@aol.com.

Upgrade:
Just replace the old executable with the new one by copying it into yout CryptoPunk directory keeping your local.key and keys.txt files.

New Installation Setup:
1) Place CryptoPunk.exe in a directory of your own creation.
2) If using a link to CryptoPunk.exe ensure the working directory is the directory that CryptoPunk.exe is in.
3) Run CryptoPunk.exe.
4) Enter two 20 character strings in the edit controls of the Setup dialog.  These strings will be used to generate your private key.
(Note: identical strings do not produce the same private key.)
5) Setup will create two files local.key and keys.txt.  local.key contains your private key, your public key, your Me shared secret key and will contain your shared secret key and public key pairs for public keys you've imported.
(Note: Me contains the secret key which you can use to encrypt files for yourself and the public key which you export and send to other users of CryptoPunk.)
6) Enter your two 8 character strings in both edit controls of the Logon dialog.  These strings will be used to lock and unlock local.key using CryptoPunk's encryption engine.
(Note: identical strings do produce the same keys, so these strings are your passwords.)
7) CryptoPunk is now setup and running.  Next time you run CryptoPunk you will just have to logon using the strings entered in step 5.  You can change your passwords later by using Options then Change Passwords.

Exporting:
1) Select the public key you want to export to a file by clicking Key on the menu then by clicking Select on the pop-up menu.  Select the key name from the combobox droplist then click the OK button.
2) Click Key on the menu then click Export on the pop-up menu.
3) Enter the file name of exported key then click the Save button.
4) The selected public key is now exported into a file.

Importing:
1) Click Key on the menu then click Import on the pop-up menu.
2) Select the file that contains the public key to import then click the Open button.
3) Import will now read the public key from the selected file, create the shared secret key from the public key and then adds both the shared secret key and the public key into local.key.
4) Enter the key name i.e. Johny if your importing my public key I sent you.
5) Import will now add the key name entered into keys.txt.

Encrypting:
1) Select the key of person to receive the encrypted file by clicking Key on the menu then by clicking Select on the pop-up menu.  Select the key name from the combobox droplist then click the OK button.
2) Click File on the menu then click Encrypt on the pop-up menu.
3) Select the file to be encrypted then click the Save button.
4) CryptoPunk will now encrypt the selected file with the selected shared secret key.  The encrypted file will be the selected file's name .enk.  Cryptopunk will also shred the input plain text file; you can choose not to shred the input plain text file after encryption by using Options then unselecting that option.

Decrypting:
1) Select the key of person sending you the encrypted file to decrypt by clicking Key on the menu then by clicking Select on the pop-up menu.  Select the key name from the combobox droplist then click the OK button.
2) Click File on the menu then click Decrypt on the pop-up menu.
3) Select the file to be decrypted then click the Save button.
4) CryptoPunk will now decrypt the selected file with the selected shared secret key.  The decrypted file will be the selected file's original name; you can choose not add the DEK extension instead by using Options then unselecting that option.  Cryptopunk will also shred the input cipher text file; you can choose not to shred the input plain text file after encryption by using Options then unselecting that option.

Shredding:
1) Click File on the menu then click Shred on the pop-up menu.
2) Select the file to be shredded then click the Open button.
3) CryptoPunk will now shred the selected file.

Any questions with the instructions please e-mail MEGstir@aol.com.

Enjoy your privacy.

Signed, meg|gem